/*
 * L9DialogMsg.h
 *
 *  Created on: 2011-10-18
 *      Author: baixp
 */

#ifndef L9DIALOGMSG_H_
#define L9DIALOGMSG_H_
#include "L9Config.h"
//#include "Lib9.h"
#include "L9DialogBackground.h"
#include "L9IState.h"
#include <vector>
using namespace std;
namespace lib9bada {
//class L9DialogBackground;
//class L9IState;
class Lib9;
class L9DialogMsg: public L9DialogBackground, public L9IState {
private:
	Lib9* lib9;
	vector<String> strArr;

	int dialogX;
	int dialogY;
	int dialogW;
	int dialogH;
	int dialogLineSpace;
	int dialogLineTextOffsetX;// = 4;
	unsigned int dialogLineColor;// = 0x0;
	unsigned int dialogBtnBgColor;// = 0xffc0c0;
	unsigned int dialogBtnBgBorderColor;// = 0x0;

	//    final int K_FONT_H = 20;
	//    final int K_Top_H = 24;

	String msgTitle;

	int btnX; //为了支持触摸屏
	int btnY;
	int btnW;

	int _msgDragBeginX;// = -1;
	int _msgDragBeginY;// = -1;

	/**
	 * 初始化变量值,因为C++中不允许在类中定义成员变量的时候就直接初始化,所以使用defaultInit函数进行初始化
	 */
	void defaultInit();

	/**
	 * 返回到上一个状态
	 */
	void goBackLastState();

public:
	L9DialogMsg(Lib9* lib9);
	virtual ~L9DialogMsg();


	/**
	 * 设置消息对话框参数
	 * @param title String
	 * @param msg String
	 * @param btnText String
	 * @param boxW int
	 */
	void setMsgDialog(String title, String msg, String btnText, int boxW);

	/**
	 * 设置消息对话框参数,除了msg参数外，其它参数为系统默认，在L9Config配置中可以修改
	 * @param msg String
	 */
	void setMsgDialog(String msg);

	/**
	 * 设置对话框格式信息，比如：textOffsetX为要绘制的文本到边框的偏移量,lineSpace为文本每一行的间距
	 * @param lineOffX int
	 * @param lineSpace int
	 * @param lineColor int
	 * @param btnBgColor int
	 * @param btnBgBorderColor int
	 */
	void setDialogStyle(int lineOffX, int lineSpace, int lineColor,
			int btnBgColor, int btnBgBorderColor);

	/**
	 *
	 * @todo Implement this lib9->L9IState method
	 */
	void Init();
	/**
	 *
	 * @todo Implement this lib9->L9IState method
	 */
	void Paint();

	/**
	 *
	 * @todo Implement this lib9->L9IState method
	 */
	void Update();
};
};

#endif /* L9DIALOGMSG_H_ */
